#ifndef IO_HPP_INCLUDED
#define IO_HPP_INCLUDED

#include "image.h"
#include "config.h"
#include "Frame/listener.hpp"
#include <vector>
#include <fstream>
#include "model.hpp"

class IOImpl;

class IO: public Listener
{
public:
	IO();
	~IO();
	
	int GetImage(Image& image);
	int GetImageFromImage(Image& image, const string src);
	void Update(Image& image);
	int WriteImage(const Image& image, const string src);
	
protected:
	Config1* param;
	
private:
	IOImpl* m_impl;
};

#endif // IO_HPP_INCLUDED
